Test Failed
Pull Request — master (#2)
by Yo
01:40
created

handlerWrapper.js ➔ ???   B

Complexity

Conditions 1
Paths 0

Size

Total Lines 27

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
c 1
b 0
f 0
nc 0
nop 2
dl 0
loc 27
rs 8.8571
1
"use strict";
2
3
const logger = require('../logger/taskLogger')('Routing');
4
const transformers = require('./transformers');
5
6
module.exports = (name, handler) => (request, reply) => {
7
    const promise = new Promise(resolve => {
8
            request = transformers.in(request);
9
10
            logger.info(`[${name.toUpperCase()}][Request]`, {request});
11
12
            resolve(handler(request));
13
        })
14
            .then(response => {
15
                logger.info(`[${name.toUpperCase()}][Response]`, {response});
16
17
                return response;
18
            })
19
        ;
20
21
    return promise.then(response => {
22
        reply({result: transformers.out(response)}).type('application/json');
23
    })
24
        .catch(error => {
25
            // Reply with an error
26
            logger.error(error.stack);
27
            reply({error: error.message}).type('application/json').code(500);
28
29
            return Promise.resolve();
30
        })
31
    ;
32
};
33